<?php
// проверяем доступ
defined( '_JEXEC' ) or die( 'Restricted access' );
 
// подключаем базовый контроллер
require_once( JPATH_COMPONENT.DS.'controller.php' );
 
// По необходимости подключаем дополнительный контроллер.
if($controller = JRequest::getWord('controller')) {
 
    $path = JPATH_COMPONENT.DS.'controllers'.DS.$controller.'.php';
    if (file_exists($path)) {
      require_once $path;
    } else {
    $controller = '';
 
    }
}
 
// Создаем контроллер
$classname    = 'ShopController'.$controller;
$controller   = new $classname( );
 
 // Выполняем задачу
$controller->execute( JRequest::getVar( 'task' ) );
 
// Пересылаем на контроллер
$controller->redirect();
?>